// pages/profile/index.ts
Page({

  /**
   * 页面的初始数据
   */
  data: {
    user: {
      // 昵称
      nickName: '',
      // 头像
      avatar: ''
    }
  },
  onLoad () {
    this.setData({
      user: wx.getStorageSync('share-user')
    })
  },
  // 获取昵称
  async getNickName (ev) {
    console.log('微信用户昵称：', ev.detail.value)
    /**
     * 1. 调用后台接口存储昵称
     * 2. 本地data存储
     */
    try {
      await wx.http.put('/userInfo', { nickName: ev.detail.value })
      // 请求成功
      this.setData({
        'user.nickName': ev.detail.value
      })
    } catch (error) {
      // 请求失败
      console.log(error)
    }

  },
  // 获取头像
  getUserAvatar (ev) {
    console.log('微信用户头像：', ev.detail.avatarUrl)
    wx.uploadFile({
      url: `${wx.baseURL}/upload`,
      filePath: ev.detail.avatarUrl, // 上传图片
      name: 'file', // 后台上传图片的属性名
      // 后台需要的其它参数放到这里
      formData: {
        type: 'avatar'
      },
      header: {
        Authorization: getApp().token
      },
      success: (result) => {
        console.log('上传成功：', result.data)
        const data = JSON.parse(result.data)
        if (data.code !== 1e4) {
          return wx.utils.toast('上传失败！', 'error')
        }
        this.setData({
          'user.avatar': data.data.url
        })
      },
      fail: () => { },
      complete: () => { }
    });

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage () {

  }
})